OBJ := $(OBJ_DIR)/DefaultIRQAction.o			\
       $(OBJ_DIR)/DefaultExceptionAction.o		\
       $(OBJ_DIR)/ActionManager.o			\
       $(OBJ_DIR)/IntrGateManager.o			\
       $(OBJ_DIR)/handler.o				\
       $(OBJ_DIR)/ClockIRQAction.o			\
       $(OBJ_DIR)/Callout.o				\
       $(OBJ_DIR)/SystemCall.o

       
$(OBJ_DIR)/intrman.o : $(OBJ)
	$(LD) $(OBJ) -r -o $@

$(OBJ_DIR)/DefaultIRQAction.o: DefaultIRQAction.cpp DefaultIRQAction.h \
  IRQAction.h list.h type.h bootutil.h
	$(CC) -o $@ DefaultIRQAction.cpp 

$(OBJ_DIR)/DefaultExceptionAction.o: DefaultExceptionAction.cpp DefaultExceptionAction.h \
  ExceptionAction.h type.h bootutil.h
	$(CC) -o $@ DefaultExceptionAction.cpp 

$(OBJ_DIR)/ActionManager.o: ActionManager.cpp ActionManager.h   \
  ../core/ResourceManager.h ../core/Resource.h SCI.h            \
  IRQAction.h  DefaultIRQAction.h Map.h type.h const.h list.h
	$(CC) -o $@ ActionManager.cpp

$(OBJ_DIR)/IntrGateManager.o : IntrGateManager.cpp IntrGateManager.h
	$(CC) -o $@ IntrGateManager.cpp

$(OBJ_DIR)/handler.o : handler.s asm-inc/sconst.inc
	$(AS) -o $@ handler.s

$(OBJ_DIR)/ClockIRQAction.o : ClockIRQAction.cpp ClockIRQAction.h
	$(CC) -o $@ ClockIRQAction.cpp

$(OBJ_DIR)/Callout.o : Callout.cpp Callout.h ClockIRQAction.h
	$(CC) -o $@ Callout.cpp

$(OBJ_DIR)/SystemCall.o : SystemCall.cpp SystemCall.h
	$(CC) -o $@ SystemCall.cpp

